//引入Vue
import Vue from 'vue'
//引入App的所有父组件
import App from './App.vue'
//引入路由
import router from './router'
import './plugins/element.js'
//引入axios
import axios from "axios"
import * as echarts from 'echarts';

// var myChart = echarts.init(document.getElementById('main'));
//关闭生产提示
Vue.config.productionTip = false

//把axios挂载到vue上
Vue.prototype.$http=axios
Vue.prototype.$echarts=echarts
//配置axios的默认路径，减少代码
axios.defaults.baseURL="http://localhost:8088";

//设置和添加拦截器
axios.interceptors.request.use(config =>{
  //从localStorage获取指令令牌信息
  var token =localStorage.getItem("token")
  //判断是否已经获取到token  只要token有值就返回true
  if(token){
    //把token信息放到请求头里面
    config.headers.token = token;
  }else {
    router.push("/")
  }
  return config;
})

//设置路由守卫，to：目标路由，from：从哪个路由，next：放到目标路由 ，跳到指定的路由
router.beforeEach((to,from,next) =>{
  var path = to.path;
  //判断当前路径是不是为根路径
  if(path==="/"){
    return next();
  }

  var token = localStorage.getItem("token");
  //在不为根路径的情况下判断是否已经对token进行赋值
  if (token){
    return next();
  }
  //没有token就回到根目录
  return next("/");
})

new Vue({
  router,
  render: h => h(App)
}).$mount('#app')
//$mount('#app') 挂载到vue上